package com.tfjybj.itoo.exam.provider.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tfjybj.itoo.exam.entity.CourseScheduleEntity;
import com.tfjybj.itoo.exam.model.CourseScheduleModel;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * CourseScheduleDao接口
 * courseSchedule表
 *
 * @author 杨江涛
 * @version 2.0.0
 * @since 2.0.0 2018-11-15 10:35:56
 */
@Repository("courseScheduleDao")
public interface CourseScheduleDao extends BaseMapper<CourseScheduleEntity> {
	
	//region 模板生成：模糊查询
	/**
     * 根据班级_id模糊查询courseSchedule
     *
     * @param classId  班级_id
     * @return 模糊查询的courseSchedule集合
     * @author 杨江涛
     * @since 2.0.0 2018-11-15 10:35:56
     */
    List<CourseScheduleEntity> queryLikeClassId(@Param("classId") String classId);


    //endregion

    /* **********************************以下为非模板生成的内容********************************* */

    /**
     *  查询所有考试课程
     * @author      王雪芬
     * @return      courseName
     * @since 2.0.0     2018-11-19 12:09:05
     */
    List<CourseScheduleModel> querycourseName(@Param("newList") List<String> newList);
    /**
     *   查看该考场下的所有监考老师
     * @author      王雪芬
     * @return   CourseScheduleEntity
     * @param invigilatorMainId String
     * @since 2.0.0        22018-11-19 12:08:57
     *
     */
    CourseScheduleEntity findByTeacher(@Param("invigilatorMainId") String invigilatorMainId);

    /**
     *   根据课程id查询课程名称
     * @author      杨江涛
     * @return   CourseScheduleEntity
     * @param    courseId 课程ID
     * @since 2.0.0   2018-11-23 20:53:29
     */
    CourseScheduleEntity findByCourseId(String courseId);

    /**
     *   无参查询课程信息
     * @author      杨江涛
     * @param    semesterId 学年学期ID
     * @return   CourseScheduleList
     * @since 2.0.0  2018-11-24 10:18:30
     */
    List<CourseScheduleEntity> findCourse(String semesterId);
}
